package gob.cgr.sgrh.ejb.entidad;

import java.io.Serializable;
import javax.persistence.*;

import java.util.Date;


/**
 * The persistent class for the solicitud_legajo database table.
 * 
 */
@Entity
@NamedQueries({
    @NamedQuery(name = "SolicitudLegajo.findAllByPersonal", query = "SELECT l FROM SolicitudLegajo l where l.idPersonal.idPersonal=:idPersonal"),
    @NamedQuery(name = "SolicitudLegajo.findByIdSolicitudLegajo", query = "SELECT l FROM SolicitudLegajo l WHERE l.idSolicitudLegajo = :idSolicitudLegajo"),
    @NamedQuery(name = "SolicitudLegajo.listarSolicitudLegajo", query = "SELECT l FROM SolicitudLegajo l WHERE l.idPersonal.idPersonal = :idPersonal and l.fechaRealizada between :desde and :hasta and l.estado like :estado")
})

@Table(name="solicitud_legajo")
public class SolicitudLegajo implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(name="ID_SOLICITUD_LEGAJO")
	private Integer idSolicitudLegajo;

	private String estado;

	@Temporal(TemporalType.DATE)
	@Column(name="FECHA_REALIZADA")
	private Date fechaRealizada;

	@Column(name="ID_LEGAJO")
	private Integer idLegajo;

	@JoinColumn(name = "ID_PERSONAL", referencedColumnName = "ID_PERSONAL")
	@ManyToOne(optional = false)
	private Personal idPersonal;

	@Column(name="MOTIVO_RECHAZO")
	private String motivoRechazo;

	@Column(name="MOTIVO_SOLICITUD")
	private String motivoSolicitud;

	@Column(name="NUMERO_SOLICITUD")
	private String numeroSolicitud;

	@Transient
	private String estadoDesc;
	
	
	public SolicitudLegajo() {
	}

	public Integer getIdSolicitudLegajo() {
		return this.idSolicitudLegajo;
	}

	public void setIdSolicitudLegajo(Integer idSolicitudLegajo) {
		this.idSolicitudLegajo = idSolicitudLegajo;
	}

	public String getEstado() {
		return this.estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}

	public Date getFechaRealizada() {
		return this.fechaRealizada;
	}

	public void setFechaRealizada(Date fechaRealizada) {
		this.fechaRealizada = fechaRealizada;
	}

	public Integer getIdLegajo() {
		return this.idLegajo;
	}

	public void setIdLegajo(Integer idLegajo) {
		this.idLegajo = idLegajo;
	}

	public Personal getIdPersonal() {
		return this.idPersonal;
	}

	public void setIdPersonal(Personal idPersonal) {
		this.idPersonal = idPersonal;
	}

	public String getMotivoRechazo() {
		return this.motivoRechazo;
	}

	public void setMotivoRechazo(String motivoRechazo) {
		this.motivoRechazo = motivoRechazo;
	}

	public String getMotivoSolicitud() {
		return this.motivoSolicitud;
	}

	public void setMotivoSolicitud(String motivoSolicitud) {
		this.motivoSolicitud = motivoSolicitud;
	}

	public String getNumeroSolicitud() {
		return this.numeroSolicitud;
	}

	public void setNumeroSolicitud(String numeroSolicitud) {
		this.numeroSolicitud = numeroSolicitud;
	}
	
	public String getEstadoDesc(){
		String est="A".equals(estado)?"ANULADO":"V".equals(estado)?"VERIFICADO":"PENDIENTE";
		return est;
	} 

}